package org.lex.ftp.model;

import org.lex.catalog.NullCatalogModel;
import org.lex.ftp.net.ApacheFTPClient;
import org.lex.net.ftp.FTPURL;
import org.lex.net.ftp.IFTPClient;
import org.lex.net.ftp.IFTPFile;


public class NullFTPModel extends NullCatalogModel<String> implements FTPModel {
	private static final NullFTPModel instance = new NullFTPModel("");
	private static final IFTPFile[] EMPTY = new IFTPFile[0];
	private static final FTPFileView VIEW = new SimpleFTPFileView();
	private static final IFTPClient FTP_CLIENT = new ApacheFTPClient();

	public static NullFTPModel getInstance() {
		return instance;
	}

	public NullFTPModel(String catalog) {
		super(catalog);
	}

	public void cdUp() {
	}

	public IFTPClient getFTPClient() {
		return FTP_CLIENT;
	}

	public FTPFileView getFTPFileView() {
		return VIEW;
	}

	public IFTPFile[] list() {
		return EMPTY;
	}

	public void setFTPClient(IFTPClient ftp) {
	}

	public void setFTPFileView(FTPFileView ftpFileView) {
	}

	public FTPURL getFTPURL() {
		return FTPURL.FAKE_URL;
	}

	public void setFTPURL(FTPURL url) {
	}
}
